package net.cyndeline.scalarlib.rldrawing.orthogonalGridCompaction.drawing

import net.cyndeline.scalarlib.rldrawing.common.DrawnRoom

/**
 * Stores area and connection data for rooms and corridors drawn using rectangular shapes on a 2D grid.
 *
 * @constructor Constructs a new immutable grid drawing.
 * @param rooms All drawn room areas.
 * @param corridors All drawn corridor areas.
 */
case class ImmutableGridDrawing[RoomType, CorridorType](rooms: Set[DrawnRoom[RoomType]],
                                                        corridors: Set[DrawnCorridor[RoomType, CorridorType]]
                                                        ) extends GridDrawing[RoomType, CorridorType]
